home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / include / MotifApp / PixmapCycler.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-07-17  |  1.8 KB  |  50 lines

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //////////////////////////////////////////////////////////////////////////////
  3. //         This example code is from the book:
  4. //
  5. //           Object-Oriented Programming with C++ and OSF/Motif
  6. //         by
  7. //           Douglas Young
  8. //           Prentice Hall, 1992
  9. //           ISBN 0-13-630252-1    
  10. //
  11. //         Copyright 1991 by Prentice Hall
  12. //         All Rights Reserved
  13. //
  14. //  Permission to use, copy, modify, and distribute this software for 
  15. //  any purpose except publication and without fee is hereby granted, provided 
  16. //  that the above copyright notice appear in all copies of the software.
  17. ///////////////////////////////////////////////////////////////////////////////
  18. //////////////////////////////////////////////////////////////////////////////
  19.  
  20.  
  21. ////////////////////////////////////////////////////////////////////
  22. // PixmapCycler.h: Abstract class that supports a continuous cycle
  23. //                 of pixmaps for short animation sequences.
  24. ////////////////////////////////////////////////////////////////////
  25. #ifndef PIXMAPCYCLER_H
  26. #define PIXMAPCYCLER_H
  27. #include <Xm/Xm.h>
  28.  
  29. class PixmapCycler {
  30.     
  31.   protected:
  32.     
  33.     int       _numPixmaps;     // Total number of pixmaps in cycle
  34.     int       _current;        // Index of the current pixmap
  35.     Pixmap   *_pixmapList;     // The array of pixmaps
  36.     Dimension _width, _height; // Pixmap size
  37.     
  38.     virtual void createPixmaps() = 0; // Derived class must implement
  39.     PixmapCycler ( int, Dimension, Dimension  );   
  40.     
  41.   public:
  42.     
  43.     virtual ~PixmapCycler();
  44.     Dimension width()  { return _width; }
  45.     Dimension height() { return _height; }
  46.     
  47.     Pixmap next();       // Return the next pixmap in the cycle
  48. };
  49. #endif
  50.